home *** CD-ROM | disk | FTP | other *** search
/ PC World Interactive 7 / PC World Interactive 7.iso / pcgames / EMERGY / BC5 / EXAMPLES / OWL / APPS / INTLDEMO / readme.txt
Text File  |  1997-03-25  |  9KB  |  151 lines

  1. Copyright Borland International
  2. ObjectWindows (C) 1996
  3.  
  4. Title: International API Demo
  5.  
  6. ===========================================================================
  7. International API
  8. ===========================================================================
  9.  
  10.  
  11.                     Borland C++ provides support for international program
  12.                     development. Currently, support is provided for the
  13.                     Great Britain and United States English, French, and
  14.                     German locales. Future releases of Borland C++ will
  15.                     increase the number of locales supported.
  16.  
  17.     The LOCALE.BLL  Support for these locales is contained in the
  18.  file is installed  LOCALE.BLL library. By default, the "C" locale is in
  19.        in BC5\BIN   effect. However, a call to setlocale dynamically links
  20.         directory.  the LOCALE.BLL library to your program. A locale-
  21.                     specific module is enabled by a call to setlocale. The
  22.                     call will also specify which character set to use with
  23.                     the locale. (Character set is sometimes referred to as
  24.                     "code page" or "code set.") You can query the locale
  25.                     settings by using localeconv and setlocale functions.
  26.                     See the Library Reference, Chapter 3, for a description
  27.                     of these functions.
  28.  
  29.                     If the call to setlocale can be resolved, several
  30.                     character-handling functions change their behavior.
  31.                     Because Borland C++ 5.0 international API currently
  32.                     supports only 8-bit characters (thereby enabling
  33.                     recognition of as many as 256 characters), only
  34.                     single-byte character-handling functions are affected.
  35.                     The list of affected functions is in the Library
  36.                     Reference, Chapter 1.
  37.  
  38.                     In your code, you must #define _ _USELOCALES_ _to have
  39.                     the locale-sensitive functions available. Otherwise,
  40.                     only the "C" locale macros will be used.
  41.  
  42.  
  43.  The international  =======================================================
  44. API sample program
  45.                     To illustrate the effects of selecting different
  46.                     locales, Borland C++ provides a sample program. The
  47.                     sample program (named INTLDEMO.EXE) is an ObjectWindows
  48.                     application. All source code and a project file for the
  49.                     sample are provided. The sample program INTLDEMO (in
  50.                     BC5\EXAMPLES\OWL\APPS\INTLDEMO) demonstrates how the
  51.                     setlocale function can produce an "internationally
  52.                     aware" Windows application. You can switch the inter-
  53.                     face language at run time between English, French, and
  54.                     German.
  55.  
  56.  
  57.                                                                           1
  58.  
  59.  
  60.                     INTLDEMO displays all of the Windows ANSI character set
  61.                     (also referred to as the WIN 1252 character set) in a
  62.                     16-by-16 character grid. A number of characters are
  63.                     highlighted according to the selections under the
  64.                     "Locale" and the "Classification" menus. When you
  65.                     execute INTLDEMO, the screen shows the default "C"
  66.                     locale, and the default classification is isalpha. The
  67.                     highlighted characters are therefore the characters A
  68.                     to Z  and a to z. By selecting another locale (for
  69.                     example, French) the accented versions of the
  70.                     characters (for example é) are also highlighted.
  71.                     Various combinations of locale and classification can
  72.                     be illustrated by selecting the appropriate menu items.
  73.  
  74.                     The results of calling the localeconv function for the
  75.                     current locale are illustrated by selecting
  76.                     "Conventions|Show". For example, with the French locale
  77.                     selected, the international currency symbol becomes FRF
  78.                     and the currency symbol becomes F. Note that this
  79.                     window can remain open while either the language or
  80.                     locale is changed and the values are updated
  81.                     accordingly.
  82.  
  83.                     The "File|List" menu produces a dialog box that
  84.                     demonstrates the effects of the locale on collation
  85.                     sequences and on date and time functions. The files in
  86.                     the current directory are shown sorted according to the
  87.                     current locale, and with date and times displayed
  88.                     according to the conventions and in the language of the
  89.                     selected locale. File names can be switched between
  90.                     upper/lower case to demonstrate the effects of the
  91.                     toupper and tolower functions in the current locale.
  92.                     The dialog also illustrates the effects of the
  93.                     BWCCIntlInit function on the Ok, Cancel and Help
  94.                     buttons of the dialog. Any file can be selected to be
  95.                     viewed and its contents similarly sorted according to
  96.                     the current locale collation sequence.
  97.  
  98.                     The "Language" menu allows the language of the UI to be
  99.                     changed "on the fly." This feature uses ObjectWindow's
  100.                     ability to associate windows interface elements to a
  101.                     module, in this case a .DLL that contains the resources
  102.                     in a particular language. When the language is changed,
  103.                     a new language .DLL is loaded and the interface
  104.                     elements are reloaded from that .DLL. Note that the
  105.                     date and times in the File List dialog are not affected
  106.                     by the change in language, but by the choice of locale.
  107.  
  108.                     The 'Classification' menu shows a list of the locale-
  109.                     sensitive isxxx() functions. Selecting one of these
  110.                     items will cause the characters that return true for
  111.                     this function in the current locale to be highlighted
  112.                     in the main window.
  113.  
  114.  
  115.                     INTLDEMO also supports multi-lingual OLE automation. 
  116.                     Commands are exposed which allow a controller to select
  117.                       1. the locale, 
  118.                       2. the language of the UI, 
  119.                       3. the classification function. 
  120.  
  121.                     These commands are available in English, French and 
  122.                     German. A controller program, CALLDEMO, is provided, 
  123.                     which illustrates this process.
  124.  
  125.                     By default, the type library will be generated according
  126.                     to the current Control Panel settings. For example,
  127.                     running INTLDEMO with the -Typelib switch under French
  128.                     settings will generate intldemo.olb in French.
  129.  
  130.                     To generate the type library in a given language, use
  131.                     the -Language switch. For example,
  132.                       intldemo.exe -Language=7 -Typelib=german.olb
  133.                     will generate a German type library called german.olb.
  134.  
  135.                     Some localized BASIC scripts are also provided. These 
  136.                     scripts can be run from a VBA apllication, such as Excel.
  137.                     In order to run the French or German scripts in the US 
  138.                     version of Excel, it is necessary to load the appropriate
  139.                     localized object libraries. This process is fully 
  140.                     explained    in the description of the AUTOCALC example 
  141.                     program.
  142.  
  143.                     In addition, Excel can be used to browse the type library 
  144.                     information. For example, browsing the German version of
  145.                     the type library displays localized names of methods and 
  146.                     properties, as well as brief descriptions. Localized 
  147.                     help text can also be invoked.
  148.  
  149.  
  150. 
  151.